import functools
#什么是偏函数

print(int('12345'))

print(int('12345',base=16))

def int16(n,base=16):
    return int(n,base)

print(int16('12345'))

#这里int16就可以说是偏函数

#利用functools 可以轻松创建出偏函数

int8=functools.partial(int,base=8)

print(int8('12345'))

#简单总结functools.partial的作用就是，
# 把一个函数的某些参数给固定住（也就是设置默认值），返回一个新的函数，调用这个新函数会更简单

# 实际上可以接收函数对象、*args和**kw这2个参数
# 上面的base=8 其实就是**kw参数

max10=functools.partial(max,10)

print(max10(5,6,7))

# 这里的10就添加到了*args里面
